// updateConfig.js
import fs from 'fs'
import path from 'path'

/**
 * 更新 configsettings.json 文件中的 treeData 字段
 * @param {Array} newTreeData - 要写入的新的 treeData 数组
 * @param {string} [relativePath='./src/configs/configsettings.json'] - JSON 文件的相对路径
 */
export function updateTreeData(newTreeData, relativePath = './configs/configsettings.json') {
    try {
        // 解析文件路径
        const filePath = path.resolve(relativePath)

        // 检查文件是否存在
        if (!fs.existsSync(filePath)) {
            console.error('❌ 未找到文件:', filePath)
            return false
        }

        // 读取并解析 JSON 文件
        const data = JSON.parse(fs.readFileSync(filePath, 'utf-8'))

        // 修改 treeData 字段
        data.treeData = newTreeData

        // 写回文件（带缩进格式）
        fs.writeFileSync(filePath, JSON.stringify(data, null, 2), 'utf-8')

        console.log('✅ treeData 更新完成!')
        console.log('📄 文件路径:', filePath)
        return true

    } catch (error) {
        console.error('❌ 更新失败:', error)
        return false
    }
}
